//Created by Anderson Tomaz Fernandes
//DJ, Producer, Mix & Mastering Engineer
//anderson@hardmusicrecords.com
//Copyright 2010 - All Rights Reserved

desc:Dual Paning Device

slider1:-100<-100,100,1>Left
slider2:100<-100,100,1>Right
slider3:0<-100,100,0.1>Pan

@init

@slider

slider1 < 0 ? (
  l_l_gain = slider1 * -0.01;
  l_r_gain = slider1 * 0.01;
  ) : (
  l_l_gain = slider1 * -0.01;
  l_r_gain = slider1 * 0.01;
  );

slider2 > 0 ? (
  r_r_gain = slider2 * 0.01;
  r_l_gain = slider2 * -0.01;
  ) : (
  r_r_gain = slider2 * 0.01;
  r_l_gain = slider2 * -0.01;
  );

tgt_pan = slider3 * 0.01;

tgt_pan < 0 ? (
  pan_l = 1.00;
  pan_r = tgt_pan + 1.00;
  ) : (
  pan_l = -tgt_pan + 1.00;
  pan_r = 1.00;
  );

@block

@sample

left_in = spl0;
right_in = spl1;

spl0 = pan_l * ( ( left_in + ( left_in * l_l_gain ) ) + ( right_in + ( right_in * r_l_gain ) ) ) * 0.5;
spl1 = pan_r * ( ( right_in + ( right_in * r_r_gain ) ) + ( left_in + ( left_in * l_r_gain ) ) ) * 0.5;

